package gang.org.springframework.framework.core.type.classreading;

import gang.org.springframework.framework.metadata.GangMergedAnnotations;
import gang.org.springframework.framework.type.GangMethodMetadata;
import jdk.internal.org.objectweb.asm.Opcodes;

import java.util.Set;

public final class GangSimpleMethodMetadata implements GangMethodMetadata {

    private final String methodName;
    private final int access;
    private final String declaringClassName;
    private final String returnTypeName;
    private final GangMergedAnnotations annotations;

    public GangSimpleMethodMetadata(String methodName, int access, String declaringClassName, String returnTypeName, GangMergedAnnotations annotations) {
        this.methodName = methodName;
        this.access = access;
        this.declaringClassName = declaringClassName;
        this.returnTypeName = returnTypeName;
        this.annotations = annotations;
    }

    /**
     * TODO
     * */
    @Override
    public GangMergedAnnotations getAnnotations() {
        return null;
    }

    @Override
    public String getMethodName() {
        return this.methodName;
    }

    @Override
    public boolean isstatic() {
        int i = this.access & Opcodes.ACC_STATIC;
        return i != 0;
    }
}
